# 使用官方Python镜像作为基础镜像
FROM python:3.11-slim

# 设置工作目录
WORKDIR /app

# 安装系统依赖包（不使用镜像源替换，直接安装）
RUN apt-get update && apt-get install -y --no-install-recommends \
    gcc \
    libgssapi-krb5-2 \
    && rm -rf /var/lib/apt/lists/*

# 复制requirements.txt到工作目录
COPY requirements.txt .

# 安装Python依赖包（使用国内镜像源加速）
RUN pip install --no-cache-dir -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt

# 复制项目文件到工作目录
COPY . .

# 创建uploads目录并设置权限
RUN mkdir -p uploads && chmod 777 uploads

# 设置环境变量
ENV FLASK_APP=app.py
ENV FLASK_ENV=production

# 暴露应用运行的端口
EXPOSE 5000

# 启动应用的命令 - 使用Gunicorn作为生产级WSGI服务器
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "wsgi:app"]